home *** CD-ROM | disk | FTP | other *** search
- * ------------------------------------------------------------------------- *
-
- Disect - © DMA 1994-5 24.11.94
- ===================== ========
-
- V1.0: 13 Mar-Oct 94 At times, I thought I'd never get there...
- -------------------
-
- V1.1: 17.11.94-24.11.94 Well, from my rather affected memory:
- -----------------------
-
- 1) No longer crashes if disassembly window at hardware registers
- 2) No longer need to define hundreds of copper addresses one
- at a time (!)
- 3) DataStrings allow 'X' in base string
- 4) Will load executables containing LINE debug/HCLN hunks
-
- V1.2: 25.11.94-29.11.94 Got fed up playing Frontier, so...
- -----------------------
-
- 1) Gave screen a proper menu bar, and menus. ASL menus OK now.
- 2) Screen is now WB2+, ASL requester is (at last) blue!
- 3) Disect aware of 'gadtools.library' base address
- 4) Main window is now WFLG_BACKDROP, so now cannot lose ASL
- requester window behind it! I remember the day I
- discovered that one...
- 5) Key '+' swaps both disassembly windows
- 6) Symbol Window: LMB on a selected symbol, moves (upper)
- disassembly window to address of (program) symbol
- 7) Up & Down arrow gadgets in disassembly windows
-
- V1.3: 30.11.94-7.12.94
- ----------------------
-
- 1) A bug which made Process crash/caused system corruption
- on Process termination creeped into V1.1. Dead now...
- 2) INCBIN Request. Thanks to Mark M for that idea
- 3) Symbol Window: if press a letter key (with/without) SHIFT key,
- or '.' key, and if symbols are sorted alphabetically,
- now moves window to first symbol which begins with
- that character
- 4) Improved algorithms for ensuring disassembly windows align
- themselves to defined program addresses
- 5) Improved handling of global/local program symbol definition
- and reference
- 6) Added an 'about' message
- 7) When define global program symbol, opens request if causes
- local program symbols to be corrupted
- 8) RMB on a local in program symbol area moves disassembly window
- the local's global symbol
-
- V1.4: 7.12.94-11.12.94
- ----------------------
-
- 1) When disassemble to file, will concatenate successive DC.X
- statements to produce (much fewer) lines of source
- 2) RMB on instruction mnemonic moves PC to instruction
- 3) Can display addresses normally, or as hunk start offsets
- 4) Allows hunk offsets in expressions: "[0:64]"
- 5) Shift key WILL move memory window fast
- 6) Letters in hex now follow selected case
- 7) Up/down arrow gadgets in windows repeat if held down
- 8) Alarm sound when finds search data
-
- V1.5: 18.12.94
- --------------
-
- 1) RMB on displacement (eg: 'dd(Ax)') moves disass window to EA
- 2) WB requesters if cannot get resources
-
- V1.6: 9.1.95-01.02.95
- ---------------------
-
- 1) It sometimes missed arrow gadget messages, only responding
- to them when another IDCMP message occurred which
- created a signal bit to the message port. This
- happened if LMB > 4 times quickly on arrow gadgets
- 2) System DataStrings: now contain 'X' for address pointers, and
- is now aware of address pointers which point to other
- system structures
- 3) System DataStrings: automatic line commenting, and automatic
- program symbol name definition
- 4) Allows definition of user address same as previous defined
- 5) Allows a base offset address to be defined
- 6) LMB on SEA/DEA text to lock register zoom
- 7) Auto blank lines preference
- 8) SS 'Prev' gadget allows offsets from locals if same global
- 9) Dummy symbol selections can be used as line comment texts
- 10) Symbol Window now contains a scroller gadget
- 11) Disect aware of 'mathffp.library' base address
- 12) Added 'PROCP' reserved symbol name
- 13) Added Process Grabber, but only tested on A500+ so far
- 14) Request windows which take an address range: can enter '=',
- '+X', and ',X' into end address string gadgets
- 15) Was unable to read any DSCT data file if the file contained
- no user address structures
- 16) Could not detect characters between "9" and "A" as invalid in
- hex numbers input by user
- 17) Added LMB function in Display Breakpoints request window
- 18) RMB in memory dump will define base offset address
- 19) No longer scans executable files to determine project memory
- sizes, now uses seg list (the things you learn once
- you get the RKMs...)
- 20) Data areas defined using system DataStrings now get DF'd as
- macros
- 21) During DF, if a program symbol name length exceeds one tab
- size, then the remainder of the source line will be
- output using a new line
- 22) Increased executable file hunk limit
-
- V1.7: 2.2.95-20.3.95
- --------------------
-
- 1) When RMB on program address or displacement, right ALT will
- move memory window to the address
- 2) Memory dump now contains a +/- cycle gadget
- 3) When filling memory: eg, if filling LONGs, but address range
- was 31 bytes, Disect would actually write 32 bytes
- (ie: 8 complete LONGs); also changed FORBID/CLEAR
- CACHE/PERMIT method (once per byte, instead of once
- per address range, since very large fills may FORBID
- for too long); also did this for copy memory
- 4) Search memory also gives alarm sound when search ends (data
- not found); source/ASCII searches now match any
- number of spaces or tabs
- 5) During DF, if a program address was automatically replaced
- with a (program) symbol (creating an instruction
- address), the original address would still be logged
- as an missing undefined-reference address; by adding
- a single instruction, this was solved
- 6) Added Process Menu 'Breakpoint At Active Process PC' function,
- but I think the world may not like this too much...
- 7) A new, improved Symbol Selection window...
- 8) Cute little arrow gadgets in main window to move disassembly
- windows left and right
- 9) Disect refused to disassemble movec control registers (unless
- the upper 4 bits of the opcode extension word were 0)
- 10) Disect hung when I ungrabbed what I had previously considered
- to be a safe Process to do this to... it was a very
- well hidden bug (since I did not realise that by
- sending a Signal to a Wait()ing Process, a task-
- switch might/will occur)
- 11) Added Process memory allocations monitor, & unfreed memory
- list when Process terminates
- 12) History buffer no longer limited to only four entries (!)
- 13) ASL window size and coords now saved as Preferences
- 14) Can now extract symbols from .gs files
- 15) Binary files: allows load to a preferred address
- 16) Disect auto-replaces CUSTOM/CIA addresses with symbols
- 17) Another bug: if an address register contained a library base
- address, and was displayed in register window as,
- eg: 'BASEDOS', then the content of the address would
- not be displayed
- 18) Mark M pointed out to me that 'CUSTOM' is defined in
- 'intuition/preferences.i', but not as $DFF000,
- so had to rename the same symbol (held within
- Disect executable file) to 'CUSTOM_BASE'
- 19) Allows '.x' in expressions for FFP values
- 20) Fill & Copy Memory: no longer FORBID/CLEAR CACHE/PERMIT
- 21) LMB on address digits in disass window: if right ALT pressed
- moves memory window to address (instead of defining
- a breakpoint)
- 22) Had a bit of screen corruption (register/memory window) if
- defined a base offset which caused large offsets to
- be displayed (eg: '[-$12345678]', which would not
- fit into 10-chars available for it)
- 23) Now allows definition of key macros... it's simple, but
- highly effective, and I'll sleep with a grin on
- my face tonight! (I will get around to allowing
- macros to be loaded/saved... eventually)
- 24) Previously, could not replace references to seglists with
- program symbols (eg: 'move.l main-4,a0'), so Disect
- will now do this automatically
- 25) Grabbing a Process would crash if it's pr_WindowPtr was -1
- 26) Now replaces 'jsr dd(a6)' with relevant '_LVO' symbols for
- following libraries: Exec, DOS, Gfx, Int, ASL,
- GadTools, MathFFP
- 27) Can no longer define breakpoints outside project memory range
- 28) MultiBin files load and save, and program 'AllocMultiBin'
- 29) Request window gadgets now display '_' characters beneath
- letters equivalent to keyboard controls
- 30) Now allows definition of a Process's variables memory area
- (either within Process, or allocated memory), and
- can define user constant symbols as displacements
- within this memory (eg: dd(ax)), so that Disect can
- auto-replace any displacements with relevant constant
- symbol
- 31) Disect will now display content of addresses (eg: register
- window) as program symbols (no longer displays only
- an address as a program symbol)
- 32) Found a very obscure bug: if a 'JSR _LVOAllocMem' was ('E')
- executed (buffered), and if this memory was not freed
- then when Process terminated, unfreed memory was not
- listed as 'SELF' allocated
- 33) Now allows binary files to be inserted into loaded project
- 34) With much DSCT data (especially on a 500+!), things tended
- to get slow, so added something to speed things up
- 35) Auto Trace mode!!
- 36) Hardware monitor (not finished?!)
-
- * ------------------------------------------------------------------------- *